<template>
	<div><van-field v-model="text" :label="label" :placeholder="placeholder" :type="type" :rule="rule" /></div>
</template>

<script>
export default {
	data() {
		return {
			text: ''
		};
	},
	props: ['label', 'placeholder', 'type', 'rule'],
	methods: {
		gettext() {
			const rul = new RegExp(this.rule);
			if (rul.test(this.text)) {
				console.log('正则校验成功');
				// 之后我们就可以通过$emit发送一个事件(事件名,事件参数),把输入框里面的参数传给父组件
				this.$emit('inputchange', this.text);
				// 然后去父组件里绑定事件接参数内容
			}
		}
	},
	watch: {
		// watch可以监听data以及props里的数据变化
		text() {
			this.gettext();
		}
	}
};
</script>

<style></style>
